#je fais des passsages par reférences
COMPIL=g++
OPTIONS=-Wall -ansi -pedantic
EXEC=arbre

all: $(EXEC)

$(EXEC): parser.o affichage.o noeud.o arbre.o main.o
	$(COMPIL) $(OPTIONS) -o $(EXEC) noeud.o arbre.o parser.o affichage.o main.o

main.o: arbre.hpp main.cpp
	$(COMPIL) $(OPTIONS) -c main.cpp

arbre.o: parser.hpp affichage.hpp noeud.hpp arbre.cpp arbre.hpp
	$(COMPIL) $(OPTIONS) -c arbre.cpp

noeud.o: parser.hpp noeud.cpp noeud.hpp
	$(COMPIL) $(OPTIONS) -c noeud.cpp

parser.o: parser.hpp parser.cpp
	$(COMPIL) $(OPTIONS) -c parser.cpp

affichage.o: arbre.hpp noeud.hpp affichage.hpp affichage.cpp
	$(COMPIL) $(OPTIONS) -c affichage.cpp


clean:
	rm -rf *.o $(EXEC)

run:
	./$(EXEC)

valmem:
	valgrind --tool=memcheck ./$(EXEC)

valleak:
	valgrind --leak-check=full ./$(EXEC)

keyboardcat:
	firefox http://www.youtube.com/watch?v=J---aiyznGQ &
